#include "widget.h"

#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();
    return a.exec();
}
/*
 * 控件概述
 *
 * 图形化界面上的内容，按钮、文本框、复选框、下拉框这些界面上元素的统称，叫为控件
 * Qt中已经提供了很多内置的控件了
 * 控件就是Widget
 *
 * Qt Designer(widget.ui文件)左侧就是Qt内置好的控件
 * 在Qt初期，开发GUI时，没有控件的概念
 * 界面上显示的东西，都是"画"的。
 * 显示器显示的内容，都是靠画出来的
 * 操作系统会提供api，让程序员在这个画布上进行画的操作(画点、画线、画形状等)
 * 所以，Qt初期，开发一个GUI就是先画出窗口，再画出各种按钮、文本框等控件
 *
 * 后来，Qt就有了控件，随着时代发展，GUI开发体系越来越丰富，控件数量和质量越来越好了
 * Qt Designer中展示的控件都是默认的样子，Qt提供了一些优化手段，让控件变得好看
 *
*/

/*
 * QWidget类---Enabled属性
 * Qt中的各种控件都是继承自QWidget类
 * QWidget类是Qt控件体系中，通用的部分
 * widget.ui文件右侧，可以查看到QWidget类的各种属性
 * 并且在这里也能直接进行编辑
 * 上述属性都可以通过Qt文档进行了解
 *
 * enabled属性：描述了一个控件是否处于可用状态
 * 禁用状态：该控件不能接收任何用户的输入事件，并且外观上往往是灰色的
 * 如果一个widget被禁用，则该widget的子元素也被禁用
 * 即 若某个控件被禁用，则该控件的子类控件也被禁用
 *
 * bool isEnabled():获取到控件的可用状态
 * void setEnabled(bool):设置控件是否可用-true：启用 false：禁用
 *
*/

/*
 * Widget类---geometry属性
 * geometry属性表示：几何。表示四个属性的统称
 * 即 x,y,width,height
 * x,y表示此控件的左上角的像素点落到距离窗口坐标系中的具体位置。(左上角位置)
 * width表示此控件的宽度
 * height表示此控件的高度
 * 用x,y,width,height就可以表示此控件的位置和尺寸
 *
 * struct QRect
 * {
 *     int x;
 *     int y;
 *     int width;
 *     int height;
 * }
 * 获取控件的位置和尺寸信息，返回一个QRect对象
 * QRect geometry();
 *
 * 设置控件的位置和尺寸
 * setGeometry(QRect);
 * setGeometry(int x, int y, int width, int height);
 *
 * move(int x,int y);
 * move只能修改此控件的位置
 * setGeometry既可以修改位置，又可以修改尺寸
*/
























